home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 1998 November
/
CHIP Kasım 1998.iso
/
emulators
/
sony playstation
/
pexdb001.exe
/
PEX_FAQ.TXT
< prev
next >
Wrap
Text File
|
1998-01-04
|
10KB
|
203 lines
/****************************************************************************/
/* pex.faq v1.01a (last updated 01/03/98) */
/* the official pex faq by Geoffrey Wossum (aka Maxon) */
/****************************************************************************/
//////////////////////////////////////////////////////////////////////////////
// stupid questions.
//////////////////////////////////////////////////////////////////////////////
q: Can pex play FF7?
a: No, don't you see where I'm just finishing up on the CPU core.
q: Will pex be able to play FF7 when its finished?
a: What is pex? That's right, a psx emulator. What is FF7? That's right,
a psx game. So, what do you think?
q: Can I help you program it?
a: No, you suck. How can I tell? You said 'program'. Someone who might be
able to help would ask, "Can I help you code it?"
q: How can I help you?
a: What is it with you 12 year olds? They don't give you enough homework in
school.
q: How come it's taking you so long to write pex?
a: I go to this magical, mystical place called university. I go to classes
there, take tests, write papers, do projects, and other things that take
time away from pex. It's a place you 12 year olds will never get to go
to because you keep emailing me stupid questions instead of doing your
homework. I also associate with other people. This is something most of
you 12 year olds must never do based on all the time you have to email me
on your parents email accounts.
q: Can you give me the rom image? Can you give me some game images?
a: no. that would be wrong.
//////////////////////////////////////////////////////////////////////////////
// naming questions?
//////////////////////////////////////////////////////////////////////////////
q: Why did you decide to call your emulator pex?
a: I figured that if you can get 'psx' out of 'playstation', I should be able
to get 'pex' out of 'playstation emulator'. It has nothing to do with the
*nix PEX. In fact, I didn't even think about that until a month into the
project.
q: Is it 'pex', or 'PEX'?
a: It's 'pex'. I don't really like capital letters.
//////////////////////////////////////////////////////////////////////////////
// general questions.
//////////////////////////////////////////////////////////////////////////////
q: What platforms will pex run on?
a: Right now I'm planning on a dos and win95 versions only. I might
port to other Intel x86 systems later. After I'm finished, someone might
want to port it to non-Intel systems. Probably not, though, considering
the large amount of assembler pex contains.
q: What will the requirements be?
a: Here's what I'm aiming for right now (and it looks very feasible):
- Intel Pentium 166 (GenuineIntel recommended, much mathco usage is
planned).
- 16Mb memory?
- a fast 3d video card (3Dfx, nVidia, Pyramid, etc. No S3 or ATI junk.)
- cdrom drive.
- an sb compatible or gus compatible card for sound (optional).
q: I have an XYZ video card with an ABC 3d-set on it. Will pex suppport it?
a: For the dos version (the first on that'll appear), the only 3d accelerators
supported will be 3Dfx Voodoo and 3Dfx Voodoo Rush. These will be supported
through 3Dfx's Glide API. For those who are Voodoo'less, dos pex will
also provide software rendering through your 2d card (slower and less
detail). The win32s port of pex will use OpenGL for graphics, so any
3d-set with OpenGL support will provide acceleration.
q: Why are you making pex?
a: The challenge. Although some of friends claim I'm making pex because I'm
too cheap to buy a psx :)
q: Are you going to release the source to pex?
a: I'm planning to at least release the source to the R3000 recompiler. I'll
probably release the rest of the source at some point also.
q: What are you going to charge for pex?
a: Nothing. Donations would gladly be accepted, tho :)
q: Is this vaporware (much like "Into the Shadows" <sniff sniff>)?
Are we ever going to see anything?
a: School has slowed progress for most of pex's life. I've just finished
my exams, so work should pick up. I'm hoping to have a copy with
basically the cpu core out by Christmas.
//////////////////////////////////////////////////////////////////////////////
// coding questions.
//////////////////////////////////////////////////////////////////////////////
q: What are you writing pex in?
a: C and x86 asm.
q: What are compilers/tools are you using?
a: Watcom C 10.6
Borland Turbo Assembler 4.0
pmode/w 1.34 by Tran and Daredevil.
dos4/gw 1.95 from Tenberry Software.
Glide API by 3Dfx.
QEdit 3.00
dos 6.22 from microsux
q: What are you developing pex on?
a: My dev machine is as follows :
GenuineIntel Pentium 166
HX motherboard with 512 PB
48Mb edo
generic S3 ViRGE 4Mb video card
Diamond Monster 3D (3Dfx Voodoo 4Mb)
Gravis Ultrasound PnP w/4Mb
dos6.22/win95/slackware linux
q: How do you find out stuff about the psx?
a: I find doc's on the internet. emailing other psx-emu authors.
q: Do you have an Action Replay that you use to hack the psx?
a: Do I have an Action Replay? Do I have an Action Replay?!?!?
I don't even have a Playstation!
q: Are you going to use a graphics API?
a: for dos pex, 3Dfx's Glide API is being used. For win32s pex, OpenGL is the
API of choice.
q: What sound API are you going to use?
a: MIDAS by the Sahara Sufers (http://www.s2.org). MIDAS 0.7.1.b for dos pex,
MIDAS 1.1.1 for win32s pex.
q: How does the recompiler work?
a: The recompiler works in two (this has changed) passes over the R3000A code.
The first pass emits x86 code for the corresponding MIPS code. Each
instruction is divided into a prolog, body, and epilog. The prolog's and
epilog's change according to what mode pex is operating in.
The second pass links the x86 together, ie. it fills in the jump addresses.
q: What's the performance like?
a: The recompiler is so fast you barely know its worked.
The recompiled code, not sure yet. It seems to be very fast, but its
hard to tell yet. The current debugging prologs/epilogs add quite a bit
of overhead to the code. If you factor out the debugging overhead, though,
most instructions execute in 7 cycles or less. And this is without the
code being cache coherent (the debugger prevents code from becoming cache
coherent). Running out of debug mode, this number could halve!
//////////////////////////////////////////////////////////////////////////////
// questions about me.
//////////////////////////////////////////////////////////////////////////////
q: how old are you?
a: 19.
q: do you go to school?
a: yes, I'm majoring in computer science and engineering at the University
of Texas at Arlington.
q: When did you/how did you get into coding?
a: Although I've had a computer since I was 4, I didn't start programming
until I was 15, when I took a computer science class in high school.
About that time, I was also introduced to the demo scene. I decided I
wanted to code demos. So I got into demo coding. I got into emu coding
for a change of pace. pex is my first adventure in emu coding.
q: You were/are a demo coder? Can we see any of your demos?
a: Fortunately, all of our released stuff has disappeared from circulation.
It only made it to some local BBS's (internet wasn't big back then.)
It wasn't that it was bad, it just wasn't good. I could code pretty good,
and our musician could write some cool music, but our graphics and
design sucked. Of course, most demos from that era had poor design.
This was back when Second Reality was the biggest and best demo, and demos
in general let everything run too long and had 20 minute long greet
scrollers. I'm still in a demo group, but were pretty inactive. We were
half way working on a demo (that actually had good design), but then I
got onto this psx emu kick. And since I'm the only (good) coder in the
group, it's kind of halted. Maybe, one day there'll be a demo from us
on hornet.
//////////////////////////////////////////////////////////////////////////////
// helping the rebellion.
//////////////////////////////////////////////////////////////////////////////
q: How can I help you?
a: Spread the word about pex and the other psx emulators in development.
Also, if you have any good information about the psx or know where I can
get some, give it to me. It's hard to get good information. It's almost
like Sony doesn't want anyone writing an emulator ;)
If you are wanting to email a file, PLEASE contact me about it first and
wait for me to respond. I might already have it, so there's no sense
wasting the bandwidth.
If you think you help me in other ways (suggestions, expertise, coding
help), contact me.
q: How can I contact you?
a: You can contact me, Geoffrey (Maxon), at gpw0341@omega.uta.edu
q: Do you have a web page I can tell my friends about?
a: You probably got this file from the web page, but in case you didn't,
pex's official web page resides at:
http://www.fastlane.net/~gpwossum/pex.html
/****************************************************************************/
/* end of pex.faq */
/****************************************************************************/